查看原文
其他

开源RTOS,我们为什么要选择Zephyr?最硬核的答案来了~

David Leach NXP客栈 2022-09-18

Zephyr项目利用开源软件持续开发和改进安全的主要优势,为用户提供灵活且可配置的实时操作系统。恩智浦提供多个支持Zephyr OS的评估和原型设计平台。


1

为什么选择开源软件?


开源”一词是由Foresight Institute的联合创始人兼前任主席Christine Peterson于1998年创造的,用来取代当时的通用术语“自由软件”。


开源软件明确定义为任何人都可以检查、修改并增强源代码的软件。


当问起“为什么选择开源软件(OSS)”时,答案仍与“免费”相关,很多时候回答都是“因为它是免费的”。虽然开源软件从未真正免费过,但与其他替代产品相比,它的总体拥有成本(TCO)更低。开源软件的前期成本较低,而成本也从许可费用转移到定制和落地中。总体算下来,开源软件使用权无需付费。然而开源软件的价值来自多个方面,包括质量、安全性、稳定性,最重要的是,让您能够专注于高附加值。


“世界各地有很多人研究的技术具有相似部分,分享知识可以更快实现更加创新的解决方案,因为我们不必重复做过的事情。采用开源软件还能让我们复盘过去的工作并提出替代解决方案。这样,我们的产品会尽快开始增值。”

——Aingura IIoT

Xabier Marquiegui笔记



莱纳斯定律 (Linus’s Law) 认为:“如果有足够多双眼睛,所有的bug都将无所遁形”,这一点可以在良好运行的开源项目中得到了证实。世界各地的顶尖开发人员投身于该项目,推动项目的发展,为项目做出了贡献。为项目做贡献的人数远远超过任何一个机构能安排到一个项目的数量。这种倍增效让所有参与项目的人受益,并有助于生产更高质量的软件。


开源软件中发现的bug通常会很快修复,因为许多人可以通过网络社区进行访问,响应速度更快。通过社区访问的方法还能提高安全性,因为有权访问社区的开发人员均可检查、评估代码。虽然安全性是一个不断变化的目标,但庞大而健康的开源社区仍然能够通过快速发布修复程序,敏捷应对bug和安全漏洞。


开源软件提供的稳定性对长期项目很有吸引力,因为项目的开发和推进是在开放环境中进行,且公开发售。在关键应用中依赖开源软件的用户可以积极参与该项目,帮助支持和维护他们所需的功能。


考虑使用开源软件的最重要原因可能是,利用开源项目的公共模块和共享知识,将重心放在为应用增值上。社区为开源软件做出了贡献,并提供了所有用户都可以利用的共同基础,进而开发有趣的创新应用。


Vestas Wind Systems A/S - 恩智浦与Zephyr的成功合作


2

为什么选择Zephyr项目?


Zephyr项目是发展最快的实时操作系统(RTOS)之一,在其章程中为连接和受限设备确立了雄心勃勃的目标(了解详情>>),但它不仅仅是一个实时操作系统。它是一个开源和开放管理的项目,拥有完整且不断增长的生态体系,包括驱动程序、通信堆栈、硬件抽象、低功耗操作系统服务、构建系统和应用组件,允许快速创建创新的应用。


“最终,低功耗嵌入式设备拥有成熟操作系统的功能。”

——Klaas Arnout,

Basalte首席执行官



Zephyr的发展归功于支持该项目的不断增长的大型社区。他们的合作通过拉取请求、测试、bug报告、分类和RFC来推进项目状态。该项目最近庆祝了第二个长期支持版本(LTS2)的诞生。在LTS2发布时,该项目有1384个不同的贡献人,支持400块板和12种不同的架构。


Zephyr具有可扩展性和开源性。了解有关Zephyr项目和恩智浦参与的更多信息,点击这里>>


一个项目要想保持良好运行,除了保障参与Zephyr项目的人数外,还需要资金资助各个运营方面。这笔资金来自白金和白银成员的财务承诺。恩智浦作为Zephyr项目的创始白金成员,与多个白金及白银成员以及大型社区贡献者一起确保该项目运行良好、充满活力。


“谷歌赞成为所有用户构建的安全产品,我们与Zephyr联手开发了一个安全的实时操作系统。Zephyr项目建立了一个强大的专家网络社区,我们正在与所有参与机构合作,不断优化我们产品所依赖的实时操作系统。”

——Barna Ibrahim,

谷歌Chrome OS战略合作负责人



这些贡献人和项目成员支持项目运行,确保代码库功能丰富、运行稳定、质量有保障。多个工作组(WG)定期开会,不断努力确保代码库的稳定性和质量。这些工作组包括:

  • 发布就绪工作组,负责管理上传的bug报告,确保优先级别的正确划分并及时分配解决方案,同时推动Zephyr发布流程

  • 信息安全工作组,帮助推动Zephyr内部的安全架构,同时处理安全漏洞

  • 功能安全工作组,致力于建立面向安全关键型应用的功能安全认证代码库

  • API工作组,为稳定和完善Zephyr公共API提供了一个论坛


如需了解当前工作组的完整列表,请参阅GitHub Zephyr Project RTOS


“RTOS安全可靠,得到了供应商的支持。我们发现,Zephyr项目是RTOS的优点与友好多样且极其活跃的开源社区的结合体,是市场上任何其它RTOS无法比拟的。开放管理模式则鼓励制造商和专业人士的参与和投入,从而产出优秀技术解决方案。借助Zephyr,我们在利用恩智浦Kinetis系列中丰富外设的同时,可快速原型化和验证硬件设计,使我们能够更快地进入市场。”

——Henrik Brix Andersen,

Vestas Wind Systems A/S首席嵌入式软件工程师



Zephyr项目提供的所有组件加上社区提供的支持,使您能够重用和利用代码,并缩短产品开发时间。最终,Zephyr项目提供的这些组件使您能够专注于真正的增值:您的实际应用。


作为Zephyr项目的活跃成员,我会定期与社区互动,不断听到他们讨论Zephyr的好处。下面是我准备这篇文章时他们提出的一些其他意见。


“我发现Zephyr OS结构与Linux相似。凭借以前开发Linux驱动程序的经验,我们能够自己开发缺失的ADC驱动程序。随后,我们将代码贡献给Zephyr OS主要项目,参加这种庞大且有用的项目是一次非常有趣的经历。”

——Andrei Auchynnikau,

Iomico LLC高级嵌入式开发人员



“永久重用开源项目,特别是标准协议,有多种好处。我可以根据需要进行更改,提供上游修复和增强,并与拥有相容目标的其他人分担维护和增强工作量。”

——Gregory Shue,

Legrand高级软件/固件工程师



我们邀请您通过下面的相关链接,更详细地了解Zephyr项目。编码快乐!


 相关链接 

网站 | www.nxp.com/zephyr

视频 | Zephyr在线研讨会系列,了解详情>>

博文 | Zephyr OS LTS 2版本增加了对i.MX RT600跨界MCU的全平台支持,了解详情>>

博文 | 采用恩智浦MCUXpresso SDK实现Zephyr软件代码重用,了解详情>>


本文作者

David Leach,恩智浦半导体软件架构师,他于2015年加入飞思卡尔半导体(现为恩智浦半导体),担任软件架构师,在连接和各种标准项目中发挥领导作用。在过去的几年里,他一直参与恩智浦的开源软件活动,目前在边缘处理业务部领导MCU开源软件团队。他是恩智浦Zephyr项目技术指导委员会和管理委员会的代表。


随身问 随时聊

① 选择菜单【用户中心/技术支持】

② 点击消息中的【确认】,开启聊天

③ 填写并提交联系信息(仅限首次)

④ 键入技术问题,与技术顾问互动




打造安全的连接和

基础设施解决方案

为智慧生活保驾护航

关注NXP客栈





您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存